package com.pan.admin.module.api.entity;

import com.pan.admin.common.core.domain.BaseEntity;
import lombok.Data;

import java.math.BigDecimal;

/**
 * keys对象 api_keys
 *
 * @author ts
 * @date 2023-10-26
 */
@Data
public class ApiKey extends BaseEntity {

    /**
     * 主键
     */
    private Long id;

    /**
     * 关联api渠道id
     */
    private Long loanChannelId;

    /**
     * 分组词
     */
    private String groupingWords;

    /**
     * api名称
     */
    private String apiName;

    /**
     * api客户端id
     */
    private String apiClientId;

    /**
     * api密钥
     */
    private String apiSecretKey;

    /**
     * API回调通知地址
     */
    private String apiNotifyUrl;

    /**
     * API回调通知地址
     */
    private String apiNotifyUrlTest;

    /**
     * API获取进件通知接口
     */
    private String apiPullApplyNotifyUrl;

    /**
     * API重定向地址
     */
    private String apiRedirectUrl;

    /** api版本类型（1 V1，2 V2，3 V3） */
    private Integer apiVersion;
    /**
     * 0测试环境 1正式环境
     */
    private Integer apiEnvType;

    /**
     * API版本模式:(默认:0md5模式， 1手机号8位掩码模式)
     */
    private Integer apiVersionMode;

    /**
     * 前置条件验证 0撞库 1进件
     */
    private Integer type;

    /**
     * 发送方白名单IP
     */
    private String apiWhiteIps;
    /**
     * API接入提供方(0我方 1对方)
     */
    private Integer apiAccessProviderType;

    /**
     * 对当前渠道是否开启授权页面（1：开启 0：关闭）
     */
    private Integer apiEnableAccept;

    /**
     *  渠道成本价格
     */
    private BigDecimal apiPrice;

    /**
     *  渠道余额
     */
    private BigDecimal balance;

    /**
     * 渠道抽成比例
     */
    private BigDecimal apiShare;

    /**
     * 渠道老用户比例
     */
    private BigDecimal apiWakeRatio;

    /** 赠量 */
    private BigDecimal giftQuantity;

    /** 对撞库下游强制性返回的时长时间(毫秒) */
    private Integer apiTimeoutLimit;

    /** 开启进件空号检测（默认0禁用 1启用） */
    private Integer enableApplyEmptyCheck;

    /**
     * 用户撞库比例（默认0）
     */
    private Integer apiHistoryUserProportion;

    /**
     * 用户撞库排序(默认0正序，1倒序)
     */
    private Integer apiHistoryUserOrderType;

    /**
     * 状态(0禁用，1启用)
     */
    private Integer status;

}
